Methods, Systems, And Computer Program Products For Delivering A Program In Advance Of A Scheduled Broadcast Time

ABSTRACT

A scheduled broadcast time is retrieved for a program that is to be delivered in advance of the scheduled broadcast time, wherein the scheduled broadcast time is associated with a program content identifier for the program. Prior to the scheduled broadcast time, a pre-cast channel is selected on a network by selecting a dedicated pre-cast channel. Prior to the scheduled broadcast time, a signal is sent for placing a viewer program storage device into a pre-cast mode, such that viewing of the pre-cast channel is disabled. Prior to the scheduled broadcast time, the program is delivered to the viewer program storage device over the pre-cast channel, wherein the delivered program is associated with the program content identifier and a time stamp for disabling playback of the delivered program until arrival of the scheduled broadcast time.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/597,422 filed Aug. 29, 2012, the entire contents of which areincorporated herein by reference in their entirety, which is acontinuation of U.S. patent application Ser. No. 12/018,414 filed Jan.23, 2008, now U.S. Pat. No. 8,272,013, the contents of which areincorporated herein by reference in their entirety.

BACKGROUND

Exemplary embodiments relate generally to electronic contentdistribution and, more specifically, to methods, computer programproducts, and systems for delivering electronic content in advance of ascheduled broadcast time,

Existing techniques for distributing electronic content are subject tobandwidth limitations. For example, an Internet Protocol television(IPTV) connection to a user premises may have a maximum bandwidth of 24megabytes per second. At the same time, a typical IPTV service mayprovide users with the choice of hundreds of program streams, such asreal time television broadcasts, on-demand video programs, andinteractive events. Given the bandwidth limitations of the user premisesconnection, as well as the finite bandwidth capacities of practical IPTVdistribution networks, it is not feasible to simultaneously transmit allavailable program streams to the user. Rather, in the case of highdefinition (HD) program streams, it may be possible to simultaneouslysend no more than two independent program streams to a user.

The practice of transmitting IPTV program streams based upon currentuser demand leads to network congestion during peak periods of use, aswell as inefficient use of the distribution network during off-peakhours. For example, the weekday hours of 7:00 PM to 11:00 PM EasternStandard Time (EST) represent a prime time viewing period during which arelatively large numbers of users are expected to watch IPTV programstreams. During these hours, network capacity may be challenged. Bycontrast, viewership is relatively low from 2:00 AM to 6:00 AM EST, withportions of the network remaining underutilized. Moreover, somebroadcast channels cease operation between the early morning hours of12:00 AM and 5:00 AM, creating unused bandwidth during this time. Inview of the foregoing considerations, what is needed is a technique fordistributing electronic content which utilizes the capacity of thenetwork in a more efficient manner.

SUMMARY

Exemplary embodiments relate to methods for delivering a program to adevice in advance of a scheduled broadcast time for the program. Ascheduled broadcast time is retrieved for the program, wherein thescheduled broadcast time is associated with a program content identifierfor the program. Prior to the scheduled broadcast time, a pre-castchannel is selected on a network by selecting at least one of acurrently unused channel or a dedicated pre-cast channel. Prior to thescheduled broadcast time, a signal is sent for placing a viewer programstorage device into a pre-cast mode, such that viewing of the pre-castchannel is disabled. Prior to the scheduled broadcast time, the programis delivered to the viewer program storage device over the pre-castchannel, wherein the delivered program is associated with the programcontent identifier and a time stamp for disabling playback of thedelivered program until arrival of the scheduled broadcast time.

Another set of exemplary embodiments include computer program productsfor delivering a program to a device in advance of a scheduled broadcasttime for the program. The computer program products include a storagemedium readable by a processing circuit and for storing instructions forexecution by the processing circuit for facilitating a method. Themethod includes retrieving a scheduled broadcast time for the program,wherein the scheduled broadcast time is associated with a programcontent identifier for the program. Prior to the scheduled broadcasttime, a pre-cast channel is selected on a network by selecting at leastone of a currently unused channel or a dedicated pre-cast channel. Priorto the scheduled broadcast time, a signal is sent for placing a viewerprogram storage device into a pre-cast mode, such that viewing of thepre-cast channel is disabled. Prior to the scheduled broadcast time, theprogram is delivered to the viewer program storage device over thepre-cast channel, wherein the delivered program is associated with theprogram content identifier and a time stamp for disabling playback ofthe delivered program until arrival of the scheduled broadcast time.

Another set of exemplary embodiments include systems for delivering aprogram to a device in advance of a scheduled broadcast time for theprogram. The systems include an input mechanism for receiving a requestfor a program and a processor, operatively coupled to the inputmechanism. The processor receives a program content identifier thatidentifies the requested program and retrieves a scheduled broadcasttime for the identified program from a program guide. The scheduledbroadcast time for the identified program is associated with the programcontent identifier such that, prior to the scheduled broadcast time forthe identified program, the processor selects a pre-cast channel on anetwork by selecting at least one of a currently unused channel or adedicated pre-cast channel.

Other methods, computer program products, and systems according toembodiments will be or become apparent to one with skill in the art uponreview of the following drawings and detailed description. It isintended that all such additional systems, methods, and/or computerprogram products be included within this description, be within thescope of the exemplary embodiments, and be protected by the accompanyingclaims.

BRIEF DESCRIPTION OF THE DRAWINGS

Referring now to the drawings wherein like elements are numbered alikein the several FIGURES:

FIG. 1 is a simplified block diagram of a first exemplary system fordelivering a program to a device in advance of a scheduled broadcasttime for the program.

FIGS. 2A and 2B together comprise a flowchart of an exemplary procedurefor delivering a program to a device in advance of a scheduled broadcasttime for the program.

FIG. 3 is a graphical representation of an illustrative electronicprogram guide (EPG) that may be employed in connection with theprocedure of FIGS. 2A and 2B.

FIG. 4 is a simplified block diagram of a second exemplary system fordelivering a program to a device in advance of a scheduled broadcasttime for the program.

The detailed description explains the exemplary embodiments, togetherwith advantages and features, by way of example with reference to thedrawings.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth in order to provide a thorough understanding of embodiments.However, it will be understood by those of ordinary skill in the artthat the embodiments may be practiced without these specific details. Inother instances, well-known methods, procedures, components and circuitshave not been described in detail so as not to obscure the embodiments.

FIG. 1 is a simplified block diagram of an exemplary system fordelivering a program to a device in advance of a scheduled broadcasttime for the program. A content provider 102 is operatively coupled toan access server 112. The content provider 102 may be conceptualized asa head end, providing a plurality of channels, e.g., televisionchannels. These channels may each be provided over one or more InternetProtocol (IP)-based communication links between the content provider 102and a computing device, such as a set-top box (STB) 106, via the accessserver 112, a delivery server 111, and a network 100. Each IP-basedcommunication link is associated with a corresponding IP address. One ormore of the television channels carries a plurality of respectiveprograms that are each broadcast at a corresponding scheduled broadcasttime. One or more of the broadcast programs is associated with acorresponding program content identifier setting forth a name ordescriptive information or both for a broadcast program. The programcontent identifier may, but need not, be included in a packet header ofa multicast stream associated with the broadcast program.

During periods of peak viewing, the network 100 may become congested.For example, viewership generally peaks during the prime time hours of7:00 PM to 11:00 PM Eastern Standard Time (EST), Monday through Friday.Viewership is dramatically reduced during the early morning hoursbetween 12:00 AM and 6:00 AM. The capacity of the network is designed toaccommodate peak hour constraints, with the result that excess capacityremains unused during the early morning hours. Accordingly, thebandwidth demand shifting techniques described herein utilizelow-viewership periods to distribute one or more broadcast programs toviewers prior to the scheduled broadcast times for these programs. Suchdistribution, referred to as pre-casting, may be applied to one or moreprograms that are expected to be widely viewed or frequently viewed orboth. These programs may be automatically stored on a viewer's digitalvideo recorder (DVR) 107 and, pursuant to a first embodiment disclosedherein, cannot be accessed by the viewer until the scheduled broadcasttime has been reached.

According to exemplary embodiments, upon arrival of the scheduledbroadcast time, if the viewer requests to view the program, it isdownloaded from the viewer's DVR 107 instead of being broadcast to theuser over the network 100 in real time. Once the scheduled broadcasttime of a program stored on the viewer's DVR 107 is reached, the programthen becomes available to the STB 106 as a recorded program that can beselected and viewed from a designated video on demand (VOD) library.According to an exemplary embodiment, all pre-cast recordings areassigned a shelf life once they are placed into the VOD library. Forexample, up to one week's worth of recordings may be stored in the VODlibrary before these recordings are permitted to be overwritten.Additionally or alternatively, recordings could be retained oroverwritten on the basis of a viewer's previous viewing tendencies.Illustratively, if a viewer never watches the television show “Lost”,then after X weeks of keeping pre-cast recordings of “Lost” that areaccessible from the VOD library for one week, the availability of a“Lost” broadcast could be shortened from one week to 36 hours. If theviewer then modifies their behavior by watching “Lost”, the availabilityof a “Lost” broadcast could be changed from 36 hours to one week.

Some television channels do not broadcast during early morning periodsof low viewership. Accordingly, it is possible to utilize such channelsfor purposes of pre-casting. Alternatively or additionally, one or morechannels may be dedicated for the purpose of pre-casting. According toexemplary embodiments, the access server 112 is capable of monitoringthe content provider 102 to determine when one or more channels are offthe air, such that these channels can then be utilized for pre-casting.The access server 112 is also capable of routing one or more broadcastchannels to the delivery server 111 for substantially immediate deliveryin real time over the network 100, as well as routing one or morebroadcast channels to a pre-cast server 113 for purposes of pre-casting.Selection of appropriate pre-cast times, pre-cast programs, and pre-castchannels may be performed using at least one of historical channelviewing, historical program viewing, or historical channel utilizationdata stored in one or more electronic files.

According to an exemplary embodiment, during the scheduled broadcasttime, and beforehand, no evidence of the pre-cast content will bevisible to the viewer. During the scheduled broadcast time, the pre-castcontent may be played with the benefit of fast-forward and rewind up tothe current, real-time point of the broadcast but no further. Abroadcast window may be defined which starts at the scheduled broadcasttime of a program and ends at termination of the program. Once thebroadcast window ends, the pre-cast content may, but need not, benavigated on a viewer's DVR, such as the DVR 107, just like any otherDVR recording. The concept of pre-casting may, but need not, be employedin the context of cable systems, internet protocol television (IPTV)systems, or other types of content delivery systems.

The pre-cast server 113 is operatively coupled to a network DVR database115. The network DVR database 115 maintains recording information foreach of a plurality of viewer DVRs, including the DVR 107. Morespecifically, the network DVR database 115 may associate each of aplurality of viewer or DVR identifiers with corresponding programrecording parameters identifying programs the viewers are requesting torecord. In this manner, a pre-cast stream could be initiated for one ormore programs that a relatively high proportion of viewers wish torecord. The pre-cast server 113 may, but need not, build a queue ofpre-cast programs that are sent out over the network 100 in batch modeduring periods of low network usage, wherein the program queue is sentout prior to the scheduled broadcast times for all programs in thequeue, and preferably no later than prime time (illustratively, 7:00PM). In order to determine these scheduled broadcast times, the pre-castserver 113 may utilize an electronic program guide (EPG) 105 thatassociates each of a plurality of respective program content identifierswith a corresponding scheduled broadcast time.

The pre-cast server 113 and the access server 112 are operativelycoupled to the delivery server 111. The delivery server 111 is capableof sending one or more multicast broadcast streams, or one or moremulticast pre-cast streams, or both, over the network 100. According toexemplary embodiments, each multicast broadcast stream and multicastpre-cast stream is associated with a corresponding IP address for acorresponding channel number or name. The delivery server 111 is capableof sending a signal to the STB 106 for placing the STB into a pre-castmode such that viewing of the pre-cast channel is disabled at a mediadisplay device 108 operatively coupled to the DVR 107 and the STB 106.The delivery server 111, the access server 112, and the pre-cast server113 are used to implement a processing mechanism for processingbroadcast multicast and pre-cast multicast program streams. Althoughseparate elements are shown for the delivery server 111, the accessserver 112, and the pre-cast server 113, this is for illustrativepurposes. One or more of these elements may be combined into a singleelement. Alternatively or additionally, multiple servers may be utilizedto implement one or more of the delivery server 111, the access server112, or the pre-cast server 113,

A non-exhaustive list of examples for the network 100 includes wired oroptical networks, such as the Internet, intranets, Ethernet networks,token rings, Universal Serial Bus (USB), wired networks according to theIEEE 1394-1995, IEEE 1394a-2000, and IEEE 1394b standards (commonlyknown as “FireWire”), or any combination thereof. The network 100 mayinclude any combination of additional communication devices (not shown),such as gateways, routers, switches, and the like. Alternatively oradditionally, the network 100 may be implemented using a wirelessnetwork. A non-exhaustive list of examples for a wireless networkincludes any network capable of implementing communication using DirectSequence--Code Division Multiple Access (DS-CDMA), Global System forMobile Communications (GSM), North American Digital Cellular (NADC),Time Division Multiple Access (TDMA), Extended-TDMA (E-TDMA), W-CDMA,GPRS, GSM, Enhanced Data for GSM Evolution (EDGE), 3G and 4Gcommunication, wireless local area networks such as 802.11, Bluetooth™,Zigbee™, ultra wideband (UWB), or various combinations thereof.

Illustratively, the STB 106 and the DVR 107 comprise an exemplary viewerprogram storage device. Although the STB 106 and the DVR 107 are shownas separate items, this is for illustrative purposes as it should beclearly understood that the STB 106 and the DVR 107 may be implementedusing a single hardware device such as a memory-equipped STB. The mediadisplay device 108 is any device capable of producing a humanlydiscernible output in the form of one or more video images, audiblesounds, or both. Some illustrative types of media display devicesinclude, but are not limited to, television sets, laptop computers,wireless telephones, personal digital assistants (PDAs), other InternetProtocol television (IPTV)-capable devices, and personal computers.These devices may be utilized in conjunction with any of a variety ofdifferent communication platforms, such as wireless telephony, IP-basedcommunication, and others. The media display device 108 may also beincluded in the same device as the STB 106 and/or the DVR 107.

FIGS. 2A and 2B together comprise a flowchart of an exemplary procedurefor delivering a program to a device in advance of a scheduled broadcasttime for the program. The procedure commences at block 201 (FIG. 2A)where a program is identified that is expected to be frequently viewedor widely viewed or both. The identified program is associated with aprogram content identifier. Next, at block 203, a scheduled broadcasttime for the identified program is retrieved from the electronic programguide (EPG) 105 (FIGS. 1 and 3), wherein the scheduled broadcast timefor the identified program is associated with the program contentidentifier.

The procedure continues to block 205 (FIG. 2A) where, prior to thescheduled broadcast time for the identified program, a pre-cast channelis selected on the network 100 (FIG. 1) by selecting at least one of acurrently unused channel or a dedicated pre-cast channel. At block 207(FIG. 2A), prior to the scheduled broadcast time for the identifiedprogram, a signal is sent to the STB 106 (FIG. 1) for placing the STBinto a pre-cast mode such that viewing of the pre-cast channel isdisabled. Next (FIG. 2A, block 209), prior to the scheduled broadcasttime for the identified program, the program is delivered to the digitalvideo recorder (DVR) 107 (FIG. 1) over the pre-cast channel, wherein thedelivered program is associated with the program content identifier anda time stamp for disabling playback of the delivered program untilarrival of the scheduled broadcast time.

At block 211 (FIG. 2A), the program content identifier and the timestamp are used to place the program content identifier into acorresponding time slot of the EPG 115 (FIG. 1). A request is receivedfrom the STB 106 to view a requested program listed in the EPG andassociated with a corresponding scheduled broadcast time for therequested program, wherein the requested program may, but need not,comprise the delivered program (FIG. 2B, block 213). At block 215, atest is then performed to ascertain whether or not the requested programis stored on the DVR 107. If the requested program is stored on the DVR107, then the requested program is retrieved from the DVR at block 219,such that viewing of the program is enabled on or after thecorresponding scheduled broadcast time for the requested program.Otherwise, if the requested program is not stored on the DVR 107 asdetermined at block 215, then the program is delivered over the networksubstantially in real time (block 217).

FIG. 3 is a graphical representation of an illustrative electronicprogram guide (EPG), such as the EPG 105, that may be employed inconnection with the procedure of FIG. 2. According to exemplaryembodiments, the electronic program guide (EPG) 105 associates each of aplurality of respective program content identifiers 304 for each of aplurality of illustrative broadcast channels 302 with a correspondingscheduled broadcast time, such as 8:00 PM, 8:30 PM, or 9:00 PM. Thebroadcast channels 302, shown for the New York metropolitan area,include WCBS-TV (2), WNBC-TV (4), WNYW-TV (5), WABC-TV (7), WWOR-TV (9),and cable channels Showtime™, HBO™, and Cinemax™. Each of thesebroadcast channels 302 may be associated with one or more correspondingmulticast streams, each stream being associated with a corresponding IPaddress. Note that the techniques disclosed herein could be extended tocover other types of broadcasts in addition to, or in lieu of,television broadcasts. Such broadcasts illustratively include radiobroadcasts, broadcasts of streaming audio, and Internet broadcasts.

FIG. 4 is a simplified block diagram of a second exemplary system fordelivering a program to a device in advance of a scheduled broadcasttime for the program. The system includes a computer 300 operativelycoupled to a signal bearing medium 340 via an input/output interface(I/O) 330. The signal bearing medium 340 may include a representation ofinstructions for delivering a program to a device in advance of ascheduled broadcast time for the program, and may be implemented as,e.g., information permanently stored on non-writeable storage media(e.g., read-only memory devices within a computer, such as CD-ROM disksreadable by a CD-ROM drive), alterable information stored on a writeablestorage media (e.g., floppy disks within a diskette drive or hard diskdrive), information conveyed to a computer by a communications medium,such as through a computer or telephone network, including wireless orbroadband communications networks, such as the Internet, etc.

The computer 300 includes a processor 310 that processes information forimplementing delivery of a program to a device in advance of a scheduledbroadcast time, wherein the information is represented, e.g., on thesignal bearing medium 340 and communicated to the computer 300 via theI/O 330, wherein the processor 310 saves information as appropriate intoa memory 320. Illustratively, the processor 310 corresponds to theprocessing mechanism 106 of FIG. 1. Returning now to FIG. 4, thisinformation may also be saved into the memory 320, e.g., viacommunication with the I/O 330 and the signal bearing medium 340. Theprocessor 310 retrieves a scheduled broadcast time for the program,wherein the scheduled broadcast time is associated with a programcontent identifier for the program. Prior to the scheduled broadcasttime, the processor 310 selects a pre-cast channel on a network byselecting at least one of a currently unused channel or a dedicatedpre-cast channel. Prior to the scheduled broadcast time, the processor310 sends a signal to a viewer program storage device for placing theviewer program storage device into a pre-cast mode such that viewing ofthe pre-cast channel is disabled. Prior to the scheduled broadcast time,the processor 310 delivers the program to the viewer program storagedevice over the pre-cast channel, wherein the delivered program isassociated with the program content identifier and a time stamp fordisabling playback of the delivered program until arrival of thescheduled broadcast time. The foregoing steps may be implemented as aprogram or sequence of instructions within the memory 320, or on asignal bearing medium, such as the medium 340, and executed by theprocessor 310.

As described above, the exemplary embodiments can be in the form ofcomputer-implemented processes and apparatuses for practicing thoseprocesses. The exemplary embodiments can also be in the form of computerprogram code containing instructions embodied in tangible media, such asfloppy diskettes, CD ROMs, hard drives, or any other computer-readablestorage medium, wherein, when the computer program code is loaded intoand executed by a computer, the computer becomes an apparatus forpracticing the exemplary embodiments. The exemplary embodiments can alsobe in the form of computer program code, for example, whether stored ina storage medium, loaded into and/or executed by a computer, ortransmitted over some transmission medium, loaded into and/or executedby a computer, or transmitted over some transmission medium, such asover electrical wiring or cabling, through fiber optics, or viaelectromagnetic radiation, wherein, when the computer program code isloaded into an executed by a computer, the computer becomes an apparatusfor practicing the exemplary embodiments. When implemented on ageneral-purpose microprocessor, the computer program code segmentsconfigure the microprocessor to create specific logic circuits.

While the invention has been described with reference to exemplaryembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the invention. Inaddition, many modifications may be made to adapt a particular situationor material to the teachings of the invention without departing from theessential scope thereof. Therefore, it is intended that the inventionnot be limited to the particular embodiments disclosed for carrying outthis invention, but that the invention will include all embodimentsfalling within the scope of the claims. Moreover, the use of the termsfirst, second, etc. do not denote any order or importance, but ratherthe terms first, second, etc. are used to distinguish one element fromanother. Furthermore, the use of the terms a, an, etc. do not denote alimitation of quantity, but rather denote the presence of at least oneof the referenced item.

What is claimed is:
 1. A method for delivering a program to a device inadvance of a scheduled broadcast time for the program, the methodcomprising: retrieving a scheduled broadcast time for the program,wherein the scheduled broadcast time is associated with a programcontent identifier for the program; prior to the scheduled broadcasttime, selecting a pre-cast channel on a network by selecting a dedicatedpre-cast channel; prior to the scheduled broadcast time, sending asignal for placing a viewer program storage device into a pre-cast mode,such that viewing of the pre-cast channel is disabled; and prior to thescheduled broadcast time, delivering the program to the viewer programstorage device over the pre-cast channel, wherein the program isassociated with the program content identifier and a time stamp fordisabling playback of the program until arrival of the scheduledbroadcast time.
 2. The method of claim 1 further comprising using theprogram content identifier and the time stamp to place the programcontent identifier into a corresponding time slot of an electronicprogram guide, and receiving a request to view a requested programlisted in the electronic program guide and associated with acorresponding scheduled broadcast time for the requested program,wherein the requested program corresponds to the program.
 3. The methodof claim 2 further comprising performing a test to ascertain whether therequested program is stored on the viewer program storage device.
 4. Themethod of claim 3 wherein, if the requested program is stored on theviewer program storage device, enabling a viewing of the program uponthe corresponding scheduled broadcast time for the requested program. 5.The method of claim 3 wherein, if the requested program is not stored onthe viewer program storage device, delivering the program over thenetwork substantially in real time.
 6. The method of claim 1 furthercomprising selecting a pre-cast time using historical channel viewing.7. The method of claim 1 further comprising selecting the program forpre-cast using historical channel viewing.
 8. A computer programproduct, tangibly embodied on a computer readable medium, for deliveringa program to a device in advance of a scheduled broadcast time for theprogram, the computer program product including instructions that, whenexecuted by a computer, cause the computer to initiate operationscomprising: retrieving a scheduled broadcast time for the program,wherein the scheduled broadcast time is associated with a programcontent identifier for the program; prior to the scheduled broadcasttime, selecting a pre-cast channel on a network by selecting a dedicatedpre-cast channel; prior to the scheduled broadcast time, sending asignal to a viewer program storage device for placing the viewer programstorage device into a pre-cast mode such that viewing of the pre-castchannel is disabled; and prior to the scheduled broadcast time,delivering the program to the viewer program storage device over thepre-cast channel, wherein the program is associated with the programcontent identifier and a time stamp for disabling playback of theprogram until arrival of the scheduled broadcast time.
 9. The computerprogram product of claim 8, the operations further comprising using theprogram content identifier and the time stamp to place the programcontent identifier into a corresponding time slot of an electronicprogram guide and receiving a request from the viewer program storagedevice to view a requested program listed in the electronic programguide and associated with a corresponding scheduled broadcast time forthe requested program, wherein the requested program corresponds to theprogram.
 10. The computer program product of claim 9, the operationsfurther comprising performing a test to ascertain whether the requestedprogram is stored on the viewer program storage device.
 11. The computerprogram product of claim 10 wherein, if the requested program is storedon the viewer program storage device, enabling a viewing of the programupon the corresponding scheduled broadcast time for the requestedprogram.
 12. The computer program product of claim 11 wherein, if therequested program is not stored on the viewer program storage device,delivering the program over the network substantially in real time. 13.The computer program product of claim 8, the operations furthercomprising selecting a pre-cast time using historical channel viewing.14. The computer program product of claim 8 further comprisinginstructions for selecting a program for pre-cast using historicalchannel viewing.
 15. A system for delivering a program to a device inadvance of a scheduled broadcast time for the program, the systemincluding: an input mechanism for receiving a request for a program; aprocessor, operatively coupled to the input mechanism, wherein theprocessor receives a program content identifier that identifies therequested program and retrieves a scheduled broadcast time for theidentified program from a program guide, wherein the scheduled broadcasttime for the identified program is associated with the program contentidentifier such that, prior to the scheduled broadcast time for theidentified program, the processor selects a pre-cast channel on anetwork by selecting a dedicated pre-cast channel.
 16. The system ofclaim 15 wherein, prior to the scheduled broadcast time for theidentified program, the processor sends a signal to a set-top box forplacing the set-top box into a pre-cast mode such that viewing of thepre-cast channel is disabled.
 17. The system of claim 16 wherein, priorto the scheduled broadcast time for the identified program, theprocessor receives the identified program over the network and deliversthe program to a digital video recorder over the pre-cast channel, andwherein the program is associated with the program content identifierand a time stamp for disabling playback of the program until arrival ofthe scheduled broadcast time.
 18. The system of claim 17 wherein theprocessor uses the program content identifier and the time stamp toplace the program content identifier into a corresponding time slot ofan electronic program guide.
 19. The system of claim 18 wherein theprocessor receives a request from the set-top box to view a requestedprogram listed in the electronic program guide and associated with acorresponding scheduled broadcast time for the requested program, andwherein the requested program corresponds to the program.
 20. The systemof claim 19 wherein the processor performs a test to ascertain whetheror not the requested program is stored on the digital video recorderand, if the requested program is stored on the digital video recorder,the requested program is retrieved from the digital video recorder,wherein viewing of the program is enabled upon the correspondingscheduled broadcast time for the requested program and if the requestedprogram is not stored on the digital video recorder, the processorinitiates a delivery of the program over the network substantially inreal time.